### Rozdział 20. Kopie bezpieczeństwa – plan B, który ratuje dzień

Nie ma bezpiecznej strony bez porządnych kopii zapasowych. Aktualizacje mogą się nie powieść, wtyczka potrafi nagle „pogryźć się” z motywem, a atak hakerski czy błąd człowieka bywa tylko kwestią czasu. Kopia bezpieczeństwa to Twoje ubezpieczenie: możliwość cofnięcia strony do sprawnego stanu sprzed problemu. Co ważne – dobra kopia to nie tylko pliki zapisane „gdzieś tam”, ale przemyślany system tworzenia, testowania i przechowywania backupów. W tym rozdziale pokażę, jak to zrobić prosto i skutecznie na WordPressie (np. z UpdraftPlus), oraz na co zwrócić uwagę po stronie hostingu.

#### Czym właściwie jest kopia zapasowa i z czego się składa
Strona WordPress to dwie główne części:
- Pliki: rdzeń WordPressa, motywy, wtyczki, obrazy i inne media.
- Baza danych: wszystkie treści, ustawienia, wpisy, strony, komentarze, menu, konfiguracje wtyczek.

Pełna kopia zapasowa obejmuje jedno i drugie. Jeśli zapiszesz tylko pliki bez bazy, odzyskasz wygląd, ale stracisz treści. Jeśli tylko bazę – zabraknie motywów, wtyczek i mediów. Dlatego kopiujemy zawsze oba elementy i robimy to regularnie.

#### Dlaczego backup poza serwerem to nie „opcja”, tylko konieczność
Backup trzymany wyłącznie na tym samym serwerze, na którym działa strona, nie chroni Cię przed awarią serwera, atakiem szyfrującym pliki, czy błędem operatora hostingu. Kopia musi mieć co najmniej jedną zewnętrzną lokalizację, do której masz niezależny dostęp:
- chmury: Google Drive, Dropbox, OneDrive,
- zewnętrzne S3 (np. Amazon S3, Wasabi, Backblaze B2),
- zewnętrzny serwer SFTP/FTP,
- lokalny dysk (pobierany okresowo jako dodatkowy „snapshot”).

Zasada 3–2–1 mówi: trzy kopie, na dwóch różnych nośnikach, jedna poza siedzibą/serwerem. W praktyce: hostingowy backup + UpdraftPlus do chmury + miesięczna kopia offline.

#### UpdraftPlus – prosta automatyzacja kopii na WordPressie
UpdraftPlus jest jedną z najpopularniejszych wtyczek do backupu. Jej siła to prostota i niezawodność, a także szeroka lista integracji z chmurami.

Jak skonfigurować krok po kroku:
1) Instalacja i aktywacja: w panelu WordPress → Wtyczki → Dodaj nową → „UpdraftPlus”.
2) Harmonogramy: w Ustawieniach wybierz częstotliwość kopii bazy i plików.
   - Mały blog/strona firmowa: baza co 24 godziny, pliki co 1–3 dni.
   - Sklep/strona dynamiczna: baza co 4–12 godzin, pliki codziennie.
3) Retencja (ile kopii trzymać): np. 7–14 ostatnich kopii bazy i 3–7 pełnych zestawów plików. To balans między bezpieczeństwem a miejscem w chmurze.
4) Zewnętrzna lokalizacja: połącz z wybraną chmurą (Google Drive/Dropbox/S3). UpdraftPlus przeprowadzi Cię przez autoryzację. Upewnij się, że transfer jest zaszyfrowany.
5) Co backupujemy: domyślnie wszystko, ale możesz wykluczyć katalogi cache, tymczasowe i ogromne foldery z logami. To przyspiesza i obniża koszty.
6) Szyfrowanie: ustaw hasło do dostępu wtyczki; rozważ szyfrowanie archiwów (PRO) przy wrażliwych danych.
7) Test: wykonaj ręczny backup, sprawdź, czy pliki trafiły do chmury, i przetestuj proces przywracania na środowisku testowym.

UpdraftPlus pozwala też na „migracje” – przeniesienie strony między serwerami. To wygodne przy zmianie hostingu lub tworzeniu klonu do testów.

#### Jak przywrócić stronę – kiedy liczy się spokój i procedura
Czarny scenariusz? Spokojnie, to właśnie moment, dla którego robisz kopie.
1) Oceń skalę: czy problem dotyczy tylko treści (ostatni wpis), czy całego serwisu (błąd krytyczny, malware)?
2) Włącz tryb konserwacji (prosta wtyczka „maintenance” lub blokada w WAF), by użytkownicy nie widzieli chaosu.
3) Przywracanie z UpdraftPlus: w panelu wtyczki wybierz zestaw kopii (data), zaznacz elementy do odtworzenia (pliki, baza), potwierdź. Po przywróceniu wyczyść cache.
4) Jeśli WordPress nie wstaje: użyj panelu hostingu (przywrócenie kopii serwera) albo odtwórz pliki przez SFTP oraz bazę przez phpMyAdmin (import SQL).
5) Zweryfikuj: przetestuj kluczowe strony, logowanie, formularze, sklep (koszyk, płatności). Sprawdź, czy Search Console nie zgłasza błędów.

Najważniejsze: nie rób „ratunkowych” aktualizacji w panice. Najpierw wróć do stabilnego punktu, potem analizuj przyczynę.

#### Backup a hosting – czego oczekiwać od dostawcy
Dobry hosting często oferuje:
- automatyczne, codzienne kopie całego konta (pliki + bazy) z retencją 7–30 dni,
- szybkie przywracanie z poziomu panelu (pojedyncze pliki, całe katalogi, wybrane bazy),
- snapshoty przed większymi aktualizacjami (czasem na życzenie),
- możliwość pobrania kopii na lokalny dysk.

Na co zwrócić uwagę:
- Retencja i częstotliwość: jak często tworzą kopie i jak długo je trzymają?
- Zakres: czy backup obejmuje również skrzynki e‑mail i cron? (przy kontach współdzielonych to bywa różnie)
- Koszty: czy przywracanie jest bezpłatne, czy płatne? Ile kosztują dodatkowe kopie?
- Dostępność: czy możesz samodzielnie przywrócić konkretne elementy, bez kontaktu z supportem?

Nawet jeśli hosting robi kopie, traktuj je jako „drugą nogę”. Pierwszą jest Twój własny, niezależny backup w chmurze.

#### Jak często robić kopie – praktyczne scenariusze
- Wizytówka/portfolio, rzadkie zmiany: pełna kopia raz dziennie, baza co 24 godziny; trzymamy 7–14 kopii.
- Blog z regularnymi publikacjami: baza co 12–24 godziny, pliki codziennie; retencja 14–30 kopii.
- Sklep (WooCommerce), kursy, członkostwa: baza co 4–12 godzin, pliki codziennie; retencja min. 14 kopii. Rozważ transakcyjne backupy bazy po aktualizacjach zamówień (rozwiązania PRO lub funkcje hostingu).
- Przed dużą aktualizacją: zrób ręczny snapshot „punkt przywracania”, zapisz go w chmurze i pobierz lokalnie.

Częstotliwość dopasuj do utraty, na którą możesz sobie pozwolić. Jeśli strata 12 godzin zamówień to katastrofa – backup bazy musi być częstszy.

#### Dobre praktyki, które naprawdę robią różnicę
- Test przywracania: raz na kwartał odtwórz kopię na stagingu. To jedyny sposób, żeby mieć pewność, że backup działa.
- Etykiety i wersjonowanie: nazywaj kopie (np. „przed_aktualizacją_woo_2025-03-10”), łatwiej wrócić do właściwego punktu.
- Porządek w mediach: ogromne biblioteki spuchniętych obrazów podnoszą koszty kopii. Kompresuj obrazy (WebP), usuwaj duplikaty.
- Wykluczenia: nie kopiuj katalogów cache, kopii kopii, starych zipów. Backup nie jest archiwum wszystkiego.
- Bezpieczeństwo po stronie kopii: chmura z 2FA, unikatowe klucze API, ograniczenia uprawnień. Backupy też mogą być celem ataku.
- Harmonogram poza szczytem: ustaw tworzenie kopii w nocy, by nie obciążać serwera w godzinach największego ruchu.

#### Alternatywy i rozszerzenia poza UpdraftPlus
- Duplicator: świetny do klonowania i migracji; ma tryb backupów zaplanowanych w wersji PRO.
- BlogVault/ManageWP: usługi backupowe zewnętrzne, często szybsze przy dużych stronach; wygodne panele wielostronowe i jednym kliknięciem „Restore”.
- Jetpack Backup (dawniej VaultPress): kopie w czasie zbliżonym do rzeczywistego, wersjonowanie zmian – dobre dla sklepów i stron dynamicznych.
- Własne skrypty: na mocniejszych serwerach możesz dodać `mysqldump` i rsync do S3. Wymaga opieki DevOps, ale daje pełną kontrolę.

Wybór zależy od skali projektu, budżetu i komfortu obsługi.

#### Najczęstsze błędy przy backupach
- „Robimy backup, ale…”: kopia jest tylko na tym samym serwerze. To nie jest prawdziwe zabezpieczenie.
- Brak testu przywracania: backup, którego nie umiesz odtworzyć, nie jest backupem.
- Zbyt rzadka baza w e‑commerce: utrata zamówień boli najbardziej.
- Przepełniona chmura: brak miejsca zatrzymuje kolejne kopie – włącz rotację i usuwanie starych.
- Mieszanie narzędzi bez planu: kilka wtyczek wykonuje kopie naraz. To dubluje koszty i obciąża serwer.

### Podsumowanie rozdziału

Backup to prosty nawyk, który daje ogromny spokój. Wtyczka taka jak UpdraftPlus pozwala w 15 minut ustawić automatyczne kopie bazy i plików oraz wysyłać je do zewnętrznej chmury. Dołóż do tego kopie hostingu i kwartalny test przywracania, a zbudujesz system odporny na większość kryzysów: od nieudanej aktualizacji po złośliwe oprogramowanie. Najlepszy backup to ten, który robi się sam, trzyma się poza serwerem i który potrafisz odtworzyć z zamkniętymi oczami. Dzięki temu, nawet jeśli coś pójdzie nie tak, Twoja strona wróci do życia szybciej, niż zdążysz wypić kawę.